Serial arithmetic units for binary-coded decimal computers



Feb. 18,` 1958 Filed Nov. 26, 1952 l E. C. NELSON SERIAL ARITI-IMETIC UNITS FOR BINARY-CODED DECIMAL COMPUTERS 4 Sheens-Sheel 1 fida j .ZZZA

INVENTOR.

Za/em a Amm/14 Feb. 18, 1958 E. c. NELSON 2,823,855

SERIAL ARITHHETI UNITS FOR BINARY-CODED DECIMAL COMPUTERS Filed Nov. 26, 1952 4 Sheets-Sheet 2 Feb. 18, 1958 E. c. NELSON A 2,823,855

SERIAL ARITHMETIC UNITS FOR BINARY-CODED DECIMAL COMPUTERS Filed Nov. 26, 1952 4 Sheets-Sheet 3 m2 ff f2 #il fff/ I I j INVENroR. Zw/fa d #afa/1a Feb. 18, 1958 E. c. NELSON 2,823s8-55 SERIAL ARITHMETIC UNITS FOR BINARY-CODED DECIMAL COMPUTERS Filed Nov. 26. 1952 4 Sheets-Sheet 4 .i I i I I' INVENTOR.

Avrai/VFY.

United States Patent O SERIAL ARITHMETIC UNITS FR BlNARY-CODED DECIMAL COMPUTERS Eldred C. Nelson, Los Angeles, Calif., assignor, by menne assignments, to Hughes Aircraft Company, a corporation of Delaware Application November 26, 1952, Serial No. 322,665

8 Claims. (Cl. 235--61) This invention relates to serial arithmetic units for binary-coded decimal computers, and more particularly to serial arithmetic units for performing mathematical operations upon binary-coded decimal digits by producing a first series of signals corresponding to the true binary result of the operation andthen shifting and simultaneously correcting this series of signals to produce a second series of signals corresponding to the result in the desired binary-coded decimal form.

ri`he general principles of the design of binary-coded decimal arithmetic units of the type wherein a true binary result, corresponding to the sum or difference of decimal digits, is produced and then co-rrected to provide the desired binary-coded decimal result, are described in copending application for patent entitled Arithmetic Units for Decimal Coded Binary Computers by Daniel L. Curtis, Serial No. 278,408, tiled March 25, 1952, and assigned to the same assignee as the present application. In this application both serial and parallel arithemtic units are considered, each of the several embodiments disclosed including a correction control network which produces a control signal when the true binary result is `not in the desired binary-coded decimal form. A correction transfer circuit, responsive to the control signal, is utilized to correct the true binary result to the desired binary-coded decimal form when the necessity for a correction is indicated by `the control signal.

kIn the serial varithmetic system described in the copending application cited above, a first series of signals corresponding to the true binary result is shifted serially into a register and then is corrected. This may be considered as a static correction since no shift is performed while the correction is made. While this type of system provides satisfactory operation, it necessitates that an additional time interval be utilized for the correction and also `that at least three flip-flops or bistable devices be included in the circuitry in order to store the digits of the true binary result which are to be corrected.

Where an additional time interval is required for the correction, the binary-coded decimal digit signals representing the numbers to be operated upon must be spaced so that the binary digit signals representing the next decimal digits are not entered into the arithmetic unit until the previous decimal result digit has been corrected. Thus, the binary-coded decimal equivalents of 358 and 549, in one binary-coded decimal form, would be recorded as 0011 0101 1000 and 0101 0100 1001, respectively.

The principal disadvantages, then, of the static correction system described in the copending application cited above are that an additional time interval is rcquired for the correction, additional storage space must be utilized to store the input numbers, and at least three flip-flops are required in order to store the digits of the true binary result during correction.

The present invention provides a serial arithmetic unit of the type described Ain the copending application described above, but which requires no additional time in- ICC terval for operation or space intervals for recording. rthus, the binary-coded decimal equivalent of 35 8 may be coded as 00ll0l011000. In embodiments of the present invention, the true binary result is shifted and corrected without any additional delay, the desired binary-coded decimal result digits being produced and shifted in the same operation.

According to the present invention, a shifting and correcting register is provided which includes only two flip-flops and three electrical gating circuits. Two of the electrical gating circuits provide input and outputtcircuits for the shifting register and one is utilized to interconnect the ip-iops. The electrical gating circuits are actuated by a control circuit similar to that described in the copending application which produces a control signal when a true binary result is not in the desired binarycoded decimal form.

The electrical gating circuits are actuated by the control circuit to shift each true binary result through the shifting and correcting register until the second and third binary digits of the true `binary result, corresponding to the sum of two decimal digits, are stored therein. At this time, the electrical gates are actuated by the control circuit to produce signals representing the desired binarycoded decimal digit and to shift this: result forward or out of the shifting and correcting register.

Since each desired binary-coded decimal result digit is produced and shifted in one operation, no additional delay is introduced as is required in the static correction system described above. Thus, the signal series corresponding to the desired binary-coded decimal result may be produced at a rate which is equal to the maximum shifting speed of the shifting and correcting register.

In addition to producing the desired binary-coded decimal result, a further correction is made in order to provide the required decimal carry correction between binary-coded decimal places. This correction is made simultaneously with the above-described correction.

Accordingly, it is an object of the present invention to provide a serial arithmetic unit whereinthe true binary results of an operation are corrected to produce the desired binary-coded decimal result digits without any additional delay.

Another object of the present invention is to provide a serial binary-coded decimal arithmetic unit which requires only two flip-flops to store the digits of the true binary results during correction.

An additional object of the present invention is to provide a shifting and correcting register for a serial binarycoded decimal arithmetic system, said register including a minimum of bistable devices and producing binarycoded decimal results at a rate limited only by its maximum shifting speed.

A further object of the present invention is to provide an improved serial arithmetic unit for performing operations upon numbers in a binary-coded decimal form by producing a first series of signals corresponding to the true binary results of an operation and then correcting said lirst series of signals to produce a second series of signals corresponding to the result in said binary-coded decimal form.

Still another object of the present invention is to provide a serial binary-coded decimal adder requiring only two flip-flops for storing the true binary' sums during correction and requiring only normal shifting time for producing the desired binary-coded decimal sum.

Yet another object of the present invention is to provide a serial binary-coded decimal subtracter requiring only two flip-flops and requiring no storage apparatus utilized for correction purposes and the additional time interval required for shifting information into and out of same leading to the desired binary-coded decimal difference.

The novel features which are believed to be characteristic of the invention, both as to its organization and method of operation, together with further objects and advantages thereof, will be better understood from the following description considered in connection with 'the accompanying drawings, in which several embodiments of the invention are illustrated by way of examples. It is to be expressly understood, however, that the drawings are for the purpose of illustration and description only, and are not intended as a definition of the limits of the invention.

Fig. 1 is a block diagram of a serial binary-coded decimal arithmetic unit, according to this invention;

Fig. 2a is a schematic diagram of one form of the control circuit shown in Fig. l;

Fig. 2b is a schematic diagram of one form of the shifting and correcting register shown in Fig. 1;

Fig. 2c is a schematic diagram of one 4form of the electrical gating circuit for carry correction shown in Fig. l;

Fig. 3a is a schematic diagram of another form of the control circuit shown in Fig. 1;

Fig. 3b is a schematic diagram of another form of the shifting and correcting register `shown in Fig. l;

Fig. 3c is a schematic diagram of another form of the electrical gating circuit for carry correction shown in Fig. 2c;

, Fig. 4 shows a ip-liop or bistable device suitable for use in embodiments of the present invention; and

Figs. 5a, 5b, and 5c and 5d, show and, or, and clock pulse circuits, respectively, suitable for the arithemtic units of the present invention.

Referring now to Fig. l, there is shown one embodiment of a serial arithmetic unit for performing mathematical operations upon lirst and second binary-coded decimal numbers A and B by rst producing a first pair of cornplementary signal series Rb and Rb corresponding to the true binary results of the operation and a second pair of complementary signal series Cb and corresponding to the true binary carries, and then producing a third signal series Rd corresponding to the result of the operation in the desired binary-coded decimal form.

Each of the signal series includes four binary digit signals generally designated by a superscript corresponding to the digit position. rl`hus, the third binary digits in signal series Rb, Rb, and Rd, are represented as Rb2, Rb2, and R613, respectively.

The arithmetic unit of Fig. l comprises an adder-subtracter unit 100 which is responsive to signals representing numbers A and B to produce the complementary signal series Rb, Rb and Cb, Cb; a shifting and correcting register 200; a control circuit 300 for actuating register 2d@ to shift signal series Rb into the register and for further actuating register 200 to produce signal series Rd and to shift signal series Rd out of the register; a flipiiop or bistable device C for producing signals corresponding to complementary carry signal series Cb and an electrical gating circuit 40u connected to the input circuit of flip-liep C tor producing decimal carry signals Cd during a correction time interval and for entering true binary carry signals Cb at all other times; and operation sign storage Hip-.Plop S for storing the sign of an operation and producing corresponding complementary signals S and S, as wiil be made more evident hereinafter.

Shifting and correcting register 200 includes two flipflops Fil and F2 and iirst, second, and third electrical gating circuits 261, 2312., and 2GB. First electrical gating circuit 2b?. is connected to dip-flop F1 and provides an output circuit for register 200. Second electrical gating circuit 202 interconnects flip-flops Fi and F2, and third electrical gating circuit 263 is connected to flip-flop F2 and provides an input circuit for register 20d.

Flip-flops Fi and F2 produce complementary output signals F1, F1 land F2, F2, respectively. Each tiip-liop also includes a 1 and a 0 input circuit. A signal applied to the l input circuit of a liip-flop causes it to register a l; a signal applied to the 0 input circuit causes it to register a O; and the simultaneous application of signals to both input circuits triggers or causes a reversal of the flipilop. The detailed operation of a typical iiip-op circuit will be described hereinafter in conjunction with the description oi Fig. 4.

The l'lip-op input circuits are designated by a l or a 0 followed by the flip-flop representation. Thus, the 1 input circuit of dip-flop F2 is represented as 1F2.

Hereinafter, the symbols utilized to represent the signals may also be utilized to represent a lead or cable in the drawings or a variable in the equations which follow. Thus, the symbol F1 represents one of the signals produced by flip-dop F1, one of the leads connected to the output circuit of the flip-liep, and a variable F1 in the algebraic functions which follow.

Control circuit 300 responds to complementary Vtiming signals T and i-l, produced by an external source, having signal levels representing binary l and 0, respectively, when signals Rb2 and Rb2 are stored in dip-flops F1 and F2, respectively. At this time, that is, during the fourth digit interval adder-subtracter unit 100 produces signals uw, 11'54, Cba and C194. signals T and T have have levels representing binary 0 and 1, respectively, at \ll other times. The complementary timing signals T and are generated by a controlled pulse generator cooperating with the control circuit 300 and having its output leads T and n"I connected into the control circuit 300 as shown in Fig. 2a.

Control circuit 300 responds to signals Rb, Rb4, Cb4, t, F1, F1, and F2, F2, applied via corresponding leads, to produce complementary control signals E and Signals E and are at levels representing binary l and 0,

respectively, when the sum of corresponding decimal ill digits of numbers A and B plus any decimal carry Cd is greater than 9 or the diterence is less than 0, and at levels representing binary 0 and 1, respectively, when the sum is equal to or less than 9 or the difference is equal to or greater than 0.

It will be noted that hereinafter the Words sum and difference are assumed to relate to the result of an operafrom the preceding operation are added a sum of 10 is formed, and when 3 and 5 and the carry are added a sum of 9 is formed.

The control circuit and the electrical gating circuits include and and or circuits which are mechanized or connected in accordance with Boolean algebraic equations. Illustrative types of and and or gating circuits suitable for use in embodiments of the present invention are shown on pages 37 to 45 of High-Speed Computing Devices by Engineering Research Associates, published in 1950 by McGraw-Hill Book Company, Inc., New York and London, and in an article entitled Diode coincidence and mixing circuits in digital computers by Tung Chang Chen, in volume 38 of Proceedings of the Institute of Radio Engineers, on pages 511 through 514. In addition, specific diode and and or circuits as well as clock pulse circuits are considered in detail in this specification.

The Boolean algebraic equations for the mechanization of the and and for circuits are determined by the correction which must be made to transform the true binary results into the desired binary-coded decimal result digits. The control circuit is mechanized to produce a signal which indicates the correction which is to be made, and the electrical gating circuits are mechanized to produce signals corresponding to the desired binary-coded decimal result signal series Rd and lthe desired decimal carry signals Cd.

Since eachmechanization depends uponthe particular` code which is selected, codes which are suitable are considered first. After these codes have Vbeen discussed, the mechanization for one is considered in detail. In this discussion, the algebraic functions for the mechanization of the control circuit are derived first and then those defining the structure of the electrical gating circuits are considered. One of the mechanizations suitable for the first code considered is illustrated in Figs. 2a, 2b, and 2c.

After considering a specilic mechanization suitable for one code, the general technique of mechanization is considered with regard to other codes. For simplicity, only one of these mechanizations is illustrated in Figs. 3a, 3b, and 3c.

Finally after the mechanization theory has been studied, specific circuit elements suitable for use in embodiments of the present invention are considered, reference being made to Figs. 4, 5a, 5b, 5c, and 5d.

Only seven of the 161/ 6 possible binary codes for representing decimal numbers are commonly used with a con- Ventional serial adder-subtracter unit which produces true binary results. When numbers A and B are in one of these seven codes, a binary digit of number A may be added to the corresponding binary digit of number B and any carry produced is then added to the next place binary digits of A and B Without introducing any error. In all of the other codes, addition or subtraction requires special carries and cannot be performed with the conventional serial binary adder-subtracter unit.

Serial adder-subtracter units of the type described above are shown in U. S. patent Serial No. 2,609,143 entitled Electronic Computer for Addition and Subtraction by G. R. Stibitz, issued September 2, 1952, and in copending application for patent entitled Arithmetic Units for Digital Computers by Eldred C. Nelson, Serial No. 189,318, tiled October l0, 1950, now abandoned, and rei'iled as a continuation Serial No. 607,494, on August 3l, 1956, and now Patent No. 2,803,401, issued August 20, 1957.

Each of the seven codes, suitable for use in embodiments of the present invention is herein referred to as an eX- cess-N code, wherein N may be considered to be a binarycoded decimal digit representing 0. Each decimal digit ot' the binary-coded decimal numbers in an excess-l code is expressed as the binary equivalent of the digit plus N. Thus, the decimal digits of A and B are expressed as the binary equivalents of (a+-N) and (b4-N), respectively. As an example of the excess-N codes, consider the binary-coded equivalents ot the decimal digits through 5 in the excess 0, 3, and 6 codes. 1n the excess-0 code these numbers appear as0000, 0001, 0010, 0011, 0100, 5'"

and 0101, respectively; in the excess-3 code as 0011, 0100, 0101, 0110, 0111, and 1000, respectively; and in the excess-6 code as 0110, 0111, 1000, 1001, 1010, and 1011, respectively.

When the snm of the corresponding decimal digits of 'l' numbers A and B is equal to or less than 9, the true binary sum (a-l-b-t-ZN) is corrected to the desired binary-coded decimal digit (a-l-b-l-N) by subtracting the binary equivalent of N. W hen the sum of corresponding digits of numbers A and B is greater than 9, the true binary sum is corrected by adding the binary equivalent of (6-N) to produce the desired ,binary-coded decimal digit. Where the sum of the decimal digits is greater than 9, the desired binary-coded decimal carry is l regardless of the value of the true binary carry.

As an illustration of the correction required in addition, consider the following problem in the excess-0 code:

ill-:358: 0011 132549: 0101 0100 1001 Decimal carries (Cd) 1 1 True binary sums (Rb) 01001 01010 10001 Correction (+6) 0000 0110 0110 Binary coded decimal resu1t=907 1001 0000 0111 `In this `problem it will be noted that the sum of the least significant decimal digits of A and B is a number greater than 9 (8A-9:17) and consequently a correction is made by adding the binary equivalent of 6. This correction converts the truc binary result representing 17 to the desired binary-coded decimal result of 7 with a decimal carry of 1.

When the higher place binary-coded decimal digits are added, the carry from the preceding place is included and added to the least significant binary digits. Since the resuit or the next addition is also greater than 9 (10:5-1-4Jl-l), 6 is again added. The operation in this case diers somewhat from the irst since, prior to the correction, the true binary result includes a carry of 0. Thus, in this case the carry rnust be changed to 1 for the next addition. 1t will be noted, moreover, that Without the decimal carry from the preceding place no correction would be required.

The final sum is not greater than 9 (3-}-5+l=9) and consequently no correction is required or zero is added.

When the decimal digit (b4-N) is substracted from decimal digit (a-i-N) and the difference (tz-b) is equal to or greater than 0, the corrections are made by adding the binary equivalent of N to produce the desired binarycoded decimal result (n-b-{-N). When the diterence of (a4-N) and (b-l-N) is less than 0 or is a negative number, the correction is made by subtracting (6-N). The binary-coded decimal result produced in this case in the l0s complement of the difference. As an illustration of the correction required in subtraction, considerthe following subtraction problem in the excess-0 code:

Binary coded decimal result=829== 1000 0010 1001 The true binary difference produced by the subtraction True binary ditierencs (Rb) Correction (-6) of the first decimal digit of B from A is less than 0 (-1) and thus the correction is made by subtracting 6. This produces the binary equivalent of the desired 10s complement digit (9). The carry produced by this operation is included in the next subtraction, where the true binary difference produced is greater than 0 (2). 1n this case, no correction is required or 0 is subtracted. When the third decimal digits are subtracted the true binary sum is less than 0 and 6 is again subtracted to produce the desired binary-coded decimal digit in the diterence. At this time a carry is also produced which may be utilized to indicate the sign of the result.

As has been explained, control signal E produced by control circuit 300 has a level representing binary 1 when the sum of corresponding decimal digits of numbers A and B is greater than 9 or when the difference between these digits is less than 0; and has a level representing binary 0 when the sum is equal to or less than 9 or the difference is equal to or greater than 0. For the excess-0 code, this means that the binary variable E has a value of 1 if there is a carry produced during the addition of the fourth place biliary digits or if the true binary surn includes a 1 in the 'fourth place and in either the third or the second place. This relationship may be expressed by the Boolean algebraic function:

where the logical or is expressed as a plus sign (-1-) and the logical and is expressed as a dot This function then is interpreted as follows. it Cb4=1 or if Rb4 and either Rb3 or 11.8":1, E=1.

That the above function is 1 Whenever the sum is greater than 9 may be checked by considering several of the possible sums. Whenever Cb4 is 1, the true binary sum must be 15 or greater. Cbt is equal vto :.0

and Rb4=Rb3==1, the sum must be 12 or greater and if Rb4=Rb2=1, the sum must be 10 or greater.

Y The algebraic function for the complement of E, may be derived from the function for E by complementing that function according to well-known Boolean algebraic rules. This provides the function:

In subtraction a carry is produced whenever the result is negative or less than 0. Thus, E is equal. to l for subtraction whenever there is a carry, Cb. However, the control signal for addition may also be utilized for subtraction since negative numbers also appear to be greater than 9.

The correction for the excesssum may be performed by adding binary signals E representing the binary equivalent of 6. This may be expressed as follows:

C'b4 R64 R113 Rb2 Rbl Cd Rd'i Rd3 Rd2 Rd1 where CbL may be considered as the iifth digit of the true binary sum.

Tn the addition of signals E representing 6, it will be noted that no change is required in the least significant binary place since is added to Rbl to give Rdl. Thus, Rd1=Rb1.

Raiz is the sum of Rb2 and E, and is equal to 1 when E is equal to 1 and RbZ is equal to O, as indicated by ITI-12:1, or is equal to l if E is equal to 0, as indicated by `=1, and Rb2 is equal to 1. This may be expressed algebraically as:

R013 is the sum of Rb3 and E and any carry produced by the addition of R192 and E. When E=1 and Rb2=Rb3=O, as signalled by b2=R-Z3=1, no carry is produced and E=1 is added to Rb3=0 producing a sum digit of 1. When E=1 and Rb2=Rb3=L a carry is produced by the addition of Rb2 and E and when added to the next E signal and Rb3 a sum of l results. RdB is also equal to l if E=0 and Rb3=l, regardless of the value of Rbz, since, in this case, there can be no carry from the preceding addition and the sum of R123 and E is equal to l. The logical expression for this analysis is found in the function:

Rd4 is the sum of Rb4 and any carry, the sum being l when there is no carry and lb1 is equal to l or when there s a carry and Rb4 is equal to` 0. 1f E and either Rb3' or Rb2 is equal to 1, there is a carry into the fourth place and the sum digit ldL is l if Rl# is equal to 0. No carry is produced if E is equal to l and Rb3=Rb2=0 or if E is equal to 0. ln both of these cases, the surn digit Rd4 is equal to l if Rb4 is equal to l. These relationships can be expressed by the Boolean algebraic function:

Rd4=n in#.m-Eatnbbrnbn Hinz# This function may be expanded according to well-known Boolean algebraic rules and expressed as:

The expanded function may be simplified by noting that the and functions E RbbRb and E.Rb4.Rb3 are never satised i. e., they are always equal to 0. In order for these functions to be equal to l, E must be equal to 1 indicating that the true binary sum produced represents a number greater than 9. However, the function E.l'b4.Rb3.Rb2 must then represent a sum greater than l24, and the function Eli-MRM must represent a sum greater than 20, both of which are greater than the rnaxin mum sum which may be Vproduced in adding two digits and any preceding decimal carry. Thus, these functions cannot exist. Substituting 0 for these functions, then, the expanded function above may be simplified to:

Since the binary-coded decimal carry is 1 whenever E is equal to 1, and 0 whenever .E is equal to 0, the expression for Cd is simply: Cd=E.

The functions for the digits of the binary-coded decimal result may also be derived from truth tables shown below, wherein the true binary result digits and the desired binary-coded decimal result digits are tabulated for each of the possible results. in Table I the true binary sum digits and desired binary-coded decimal sum digits are tabulated, only those codes corresponding to sums of 0 through 19 being included since no other sums are possible. The least significant binary digits are not tabulated since no correction is required.

lt will be noted that at the bottom of Table I, there is an additional symbol for each column. These symbols correspond to actual signals appearing in the circuit shown in Fig. 1 and are explained in detail after the symbols at the top of Table I are considered.

TABLE Sum E Cb4 Rb4 Rb3 R09 Cd R114 R113 Rd2 (D, l) A 1 0 0 0 0 0 0 0 0 0 (2, 3) 1 0 0 0 0 1 0 0 0 1 (4, 5)..-. l 0 0 O 1 0 0 0 1 0 (6, 7) 1 0 O 0 1 1 0 0 1 1 (8, 9) l O 0 1 0 0 0 1 0 0 (10,11) 0 1 0 1 O 1 1 0 i 0 0 (12, 13) 0 1 0 1 1 0 1 0 0 1 (14, 15) 0 1 0 1 1 1 1 0 l 0 (16, 17) 0 1 1 0 0 0 1 0 1 1 (18, 19)...." 0 1 1 0 0 1 l 1 O 0 Cb Rb F2 F1 C F2 F1 Rd From this table the truth of the functions derived above can be established. For example, it is noted in analyzing the table that Ra'z, the second digit of the desired binaryacoded decimal sum, is 1 only when =Rb2=l or when E=2 b2=1; and that Rd3 is 1 only when '=Rb3=1, or when E=1 and either nb=nb2=1 or Vlimb3=Rln2=L These relationships define the same functions as those explained above, namely:

It will also be noted in examination of the truth table that other functions may be utilized to dene the relationship between the binary-coded decimal digits and the true binary digits. in the function for Rd3, for example,

.EZ-@3.17172 may be replaced with Cbt-.11172, and in the function for R514. E.Rb4.Rb2 may be replaced with Cb4.Rb2. The test of the validity of a function derived from the truth table is that it has a value equal to l only when the function is satisfied and is 0 at all other times. This means that whenever the complement of the function is equal to 1, there is a 0 in the truth table. Consider, for example, the complement of Rdii:

nd3= E+Rb .tE+(Rb2+nb3).(nb2+ii)i n=nl2nb+nb+nbazb The truth of this function may be checked in the same manner as the other functions by referring to the table abov Tt will be noted that Rd is 0 whenever E=Rb2=Rb3=1 er i=r2=1 or ab2=i=r Having considered the relationship between the binary digits of the desired binary-coded decimal sum and the binary digits of the true binary sum, it is now necessary to consider these functions in terms of actual signals appearing in the circuit shown in Fig. l. It has been pointed out that the control circuit is responsive to complementary etc. have been substituted into the functions.

`timing signals T and T which have values of 1 and 0, respectively, when the second and third digits of the true binary result are stored in dip-flops Fil and F2, respectively. This means that signals F1 and F2 represent the second and third digits of the true binary result when T :1. Consequently, when T=1, Rbz, Rb2 and Rb3, R173 can be replaced with their equivalent signals F1, F1 and F2, F2, respectively in the abo-ve functions. Similarly, Rb4 and Cb4 can be replaced with signals Rb and Cb produced by the adder-subtracter unit G. These substitutions are indicated at the bottom of Table l above.

In addition to substituting the actual signals for the variables in the above functions, the functions for E 'and E must be modified so that the correction is made only when T is equal to 1. At all other times, as indicated by When T=1 the digits of the true binary sum are to be corrected and shifted forward through shifting and correcting register 2%. This means that signals Rb, -R-b' and F2, Z-are to be corrected and shifted into flip-flops F2 and F1, respectively. At the same time, signal F1 is to be corected to produce `signal Ra@ which appears at the output circuit of register Zilli. ln other words, binarycoded decimal digits Rd3 and Rdl, when produced, are to be entered into Hip-flops F1 and F2 and binary-coded decimal digit Rd2 is to appear at the output circuit of register 200. At the same time, the decimal carry Cd is to be entered into carry iiip-iiop C.

Electrical gating circuits 201, 2512, and 293 produce signals corresponding to digits Rd2, R013, and Rdi, respectively, when T=E=1, and function as shifting gates at all other times, as signalled by '-f-E-l.

Each electrical gating circuit is mechanized in accordance with the Boolean algebraic function for the signal that it produces. Thus, electrical gating circuit 201 is mechanized in accordance with the Boolean algebraic function for Rdz. With the introduction of the modified functions for E and E, in the algebraic functions 'the resulting mechanized circuits representative of these functions will not only provide the desired binary-coded decimal digit but also the desired shifting operation.

For convenience, each of the Boolean algebraic functions utilized for mechanization is given the number of the corresponding electrical gating circuit. it will be noted, moreover, that the actual circuitsignals F1, F2,

The mechanization functions for electrical gating circuits Zul, 202 and 203 then are:

4Symbol Rd and the expressions to F1 and to F2 `ap- I the true binary carry signals Cb into flip-flop C, when' E=0, and to produce and enter signal Cd when `E=1. The mechanization function for this is:

(400) to C=Cb+E It will be noted that the input function for tlip-tiop F1 includes output signals F1 and El produced by the same Hip-Hop. These signals are superfluous since, if flip-flop F1 already registers a l, as indicated by Fl=l, it is not necessary to apply a signal to set the flip-flop to l; similarly, if dip-flop F1 already registers a 0, as signalled by F1=1, it is not necessary to apply a signal to the ip-op to set it to 0. Thus, the Boolean algebraic function for the 1 input circuit of flip-flop F1 can be simplified by substituting F and l51=1 into the function 202 above, Similarly, the Boolean algebraic function for the 0 input circuit can be simplied by substituting `1=0 and F1=1 into the complement of function 202 shown below. The input function for flip-flop F2 is simplied in a similar manner. Utilizing the simpliication theory, then, the flip-dop input functions provided by electrical `gating circuits 202 and 203 then are:

which is the same as the expression for lFl in Equations 202 above.

Flip-flop F1 must be set to 0 whenever '=IF2=1 or E=1 and F2=F1=1 or F2=F1=L This provides the O input function:

It will be noted from the simplified equations that a signal may be applied to the 1 input circuit of a flip-Flop even though its not to register a1. For example, a signal is applied to IFI for sums of l1 or 12 even though Hip-flop F1 to be set to t). At the same time, however, a signalisapplied to the 0 input circuit of flip-iop F1 so that the liip-op is triggered from its original state which, reference toithe table shows, was 1. Thus,

1l the simultaneous application of signals to both input circuits of the iiip-flop results in the complementing of the flip-op output signals.

The Boolean algebraic functions for substraction may be derived either by subtracting signals E representing binary 6 in an analysis similar to that considered above, or they may be derived directly from a truth table. For simplicity, only the truth table derivations will be considered, reference being made to Table II below wherein all of the possible differences of two excessnumbers are listed. In Table II, it will be noted that E equals 1 whenever the difference is less than 0, and that E equals 0 whenever the difference is equal to or greater than 0.

TABLE II Difference E Cb Rb F2 F1 o F2 F1 Rd (9. 0 1 1 0 1 1 1 o o o -(7. 0 1 1 1 0 0 1 0 0 1 -(5. 0 1 1 1 0 1 1 0 1 o (3. 0 1 1 1 1 o 1 0 1 1 (1 0 1 1 1 1 1 1 1 o .0

(0.1) 1 0 0 0 o 0 o 0 o 0 (2.3). 1 0 o 0 0 1 o 0 o 1 (4.5) 1 0 0 0 1 0 o 0 1 0 (6.7 1 0 0 0 1 1 0 0 1 1 (8.9) 1 0 0 1 o 0 o 1 0 0 From the above table, it will be noted that E=Cb and E1- Zin Consequently, it is possible to simplify the control signals for subtraction. However, where an adder-subtracter unit is desired, the addition control signals E and may be utilized. In this case, the extra term Rb-(Fz-l-F) occurs only when Cb=1 and consequently introduces no error, although for subtraction it is redundant.

As in the circuitry for the addition correction, the subtraction control circuit includes the complementary timing signals T and T so that the tme binary difference is corrected when T=E=l and shifting is performed at all other times when T-|-E=l.

From the subtraction table, it can be seen that electrical gating circuit 201, producing output signal series Ra', is mechanized according to the Boolean algebraic signal function:

It will be noted that this is the same as the function for addition.

Flip-Hop F1 is to be set to l for differences of -(5,6), -(3,4), (4,5) and (6,7). However, for differences of -(5,6) and (6,7) the ip-op already registers 1 as indicated by signal F1=1, and consequently no signal need be applied. Therefore, considering the remaining differences, the input function for input circuit 1F1 is found to be:

which, according to the rules for simplification, becomes:

1Fl =Im Similarly, vthe input function for input circuit CF1 is:

In the same manner, the input functions for flip-flop F2 can be found from the table to be:

12 As in addition, the binary-coded decimal carry Cd=E and logical gate 400 is mechanized according to the function:

The functions for addition and subtraction may be combined by introducing the operation sign signals S and S The convention assumed herein is that S=1 and :57:0 when the operation is iA-B or iA-H-B) and that S=0 and 37:1 when the operation is iA-i-BV or iA-(B). When =l, the operation may be cor1- sidered as addition since the subtraction of a negative number is performed as an addition. Similarly, when S=1, the operation may be considered as subtraction since the addition of a negative number is performed as a subtraction.

With the introduction of signals S and S, the combined adder-subtracter functions then are:

It will be noted that the algebraic functions for the ip-flop input circuits considered above may be divided into two general classes. in one class of functions, hereinafter referred to as general functions, the conditions for setting a ip-fiop to 1 are dened. The algebraic functions showing the relationship between Vthe binary digits of the true binary results and the desired decimal digits, and those functions derivable therefrom by signal substitution, are general functions. In the other class of functions, hereinafter referred to as setting functions, the functions for the 1 and 0 input circuits are derived separately, and are simplified according to the rules described above. p

In addition to the classes of functions above considered, there is a third class hereinafter referred to as changing or triggering functions. The changing or triggering function indicates when a flip-Hop stable state must be changed from a l to a 0 or from a 0 to a 1. The changing functions, like the other two classes of functions, may be derived directly from a truth table by noting where the desired setting of a ip-op ditfers from its previous setting.

Consider, for example, the changing function required for flip-flop F1 in Table I above. The flip-flop setting must be changed for sums of (2,3), (4,5), (10,11), (16,17), and (18,19). These sums are recognized in the yalgebraic expression:

where the notation 1F l=0F l is utilized to distinguish lthe changing functions from `the general and setting functions above'.

is In a similar manner, it can be shown that the function for flip-flop F2 in Table i above is:

changing In mechanizing the above equations, each and function is provided by an and circuit, and each or function is provided by an or circuit. rfhe leads which are connected to the input terminals of the and" and or circuits are specified by the -variables in the equations which, as explained above, may represent either signals or leads. Consider, for example, the mechanization of electrical gating circuit 201 illustrated in Fig. 2b. Electrical gating circuit 24H comprises a final or circuit 2011 having a first input terminal connected to first and circuit 201-2 producing signal EF1 and a second input terminal connected to second and circuit 201-3 producing signal Eff-1. First and circuit 201-2 has two input terminals, one of which is connected to lead and the other of which is connected to lead F1. Second and circuit 261-3 has one input terminal cou- Vnected to lead E and the other connected to lead F1.

In a similar manner, control circuit 300 shown in Fig. 2a is mechanized according to the functions:

E=rcb+rnbf2+rnbf1 '=C b.1y+b.r2.51+

Referring now to Fig. 2a, it will be noted that or circuit 301 produces signal E. Or circuit 301 has its input terminals connected to three and circuits 302, 304, and 306 producing signals T .Cb, T.Rb.F2, and T .Rb.F1, respectively. Or circuit 303, producing signal has one input terminal connected to lead the g other input terminals being connected to and circuits 305 and 307 `producing `signals 55.153 and @h-2.151, respectively.

It will be noted that the control functionsfor E and l may be written in other factored forms. For example, the function for E may be written as:

or circuit responsive to signalsF2 and F1 applied to separate input terminals.

In Example l above, it will be noted that `signals F1 and F2 appear as part of the output signal of each of the and and or circuits. This means that signals F1 and F2 must be effective through two or circuits and two and circuits before `signal E is formed. The mechanization, then, for signal E in Example l above is referred to as requiring four levels since at least one of the signals therein must'be effective through four logical circuits.

In a similar analysis, it can be seen that the mechanization of Example 2 above requires three levels, and that the mechanizations for E and shown in Fig. `2a require only two levels.

As a general rule, `mechanizations requiring a greater number `or" levels result in greater power dissipation although such mechanizations frequently make `it possible to reduce the `amount of circuitry required. It will be noted that the circuits illustrated in the gures are mechanized according to expanded functions, lwherein no sig- .nal passes through more than two levels. These circuits are designed for reduced power requirement rather than circuit simplicity. It should be understood, however, that the present invention is not limited to circuits mechanized` according to any particular form.

The 'mechanizations of electrical gating circuits 202, 203, and 400 shown in Figs. 2b and 2c include clock pulse circuits for converting the voltage-level signal representing a function to a pulse signal which is applied to the associated Hip-Hop. The clock pulse signal is introduced into the functions for `the electrical gating circuits as a nal and condition. A complete set of mechanization functions defining the structure shown in Figs. 2a, 2b, and 2c then is:

The manner in which electrical gating circuits 202, 203, and 400 are mechanized from `the corresponding equations above should be apparent from the examples already considered, and therefore it is not deemed necessary to consider Figs. 2b and `2c in further detail.

It will be noted that setting functions are utilized to provide the flip-Hop input signals above. It should be understood, however, `that general, changing, and setting functions may be utilized interchangeably, as desired.

Where the general function is utilized to provide input signals for a dip-flop, it is necessary to add a circuit which will apply signals to the 1 and 0 input circuits of the associated Hip-flop when the corresponding input function equals 1 and 0, respectively. Such a circuit is described in copending application for patent entitled Complementary Signal Generating Network by Daniel L. Curtis, inventor, Serial No. 308,045, filed September 5, 1952 and assigned to the same assignee as the present invention. The illustrative mechanizartions for changing functions are shown'tbelow when the excess-2 code is considered.

In considering the mechanizations for the other excess- N codes, it is important to note that the odd-excess codes, those where N is an odd integer, require a cor- 15 rection in the least significant binary digit of the true binary result. For example, in correcting a greater than 9, excess-3 sum, the binary equivalent of 3 (0011) is added necessitating that the least significant binary digit of the true binary result be complemented. When a correction is required in the least significant binary digit, a carry may be produced which must be sensed for the correction of the higher place binary digits. Consequently, an extra flip-flop is required for storing the least significant binary digit during the correction of the higher place binary digits. This means that in the oddexcess codes three flip-flops are required for embodiments of the present invention. In general, therefore, even-excess codes are preferable where a minimum of circuitry is desired. It should be noted, however, that the odd-excess codes may have certain desirable features. For example, the excess-3 code has the feature that no carry correction is ever required.

In the discussion which follows, the even-excess codes are considered first, and then odd-excess code correction is illustrated by considering the excess-3 code.

Of the even-excess codes, only the excess-2 code is considered in detail since the excess-6 correction is very similar to the excess-V correction and the excess-4 correction is very similar to the excess-2 correction.

The similarity between the excess-O and excess-6 codes may be observed from the excess-6 sum and diference Tablesl III and IV and the functions below. It will be noted that the excessf sum is not corrected when it is greater than 9 or when E=1, but is corrected by subtracting 6 (rather than by adding 6) when the sum is less than 9 or 175:1. It win also be noted that the funetions for E and are similar, respectively, to the functions for E and E in the excess-0 code except that certain variables are complemented, and that the functions for Rd, F1 and F2 are similar to the complements of the corresponding excess-0 functions.

TABLE III Sum Y F1 Rd TABLE IV Difference E ob Rb F2 F1 C F2 F1 Rd 1 1 1 o o 1 1 o o o o o o o o o 1 1 o o o o 1 o 1 0 o o o o 1 o o 1 o 1 o o o 1 1 o 1 1 o o o 1 o o o 1 1 1 E=Cb, E=Cb General functions tions which follow, it is important to note several distinctions between the excess-0 and excess-2 functions. It will be observed that the excess-2 functions for E and do not include complementary timing signals T and T'. This results because a correction is made whether E is 1 or 0 and thus may signal that a correction is required as well as E. For example, in addition, 'a signal of E=1 indicates that it is necessary to add the binary equivalent of 4 (100) to the sum, and a signal of -:l indicates that it is necessary to subtract the binary equivalent of 2 (10). The signals T and T are introduced into the functions as final and conditions, where a .correction is to be made and not to be made, respectively.

TABLE V Slim 1 E Cb Rb I"2 Fl C F2 Fl Rd 1 0 0 0 1 0 0 0 0 1 1 0 0 0 1 l 0 0 1 U 1 0 0 1 0 0 0 -0 1 1 1 0 0 1 `0 l 0 1 0 -0 1 0 O 1 1 0 0 1 0 l (202) 1F1=0F1- -T1F2.(+F1) +E.F2.F11 10 (203) 1F2=oF2=T.1.(R'5+F1)+E.Rb1

Only the correction changing functions, where T=1, are shown since setting functions are preferred for shifting when T= or 7:1. 15

(o) 1c=11c=r.E.`C-5

TABLE VI 20 Difference E E ob Rb F2 F1 o 112 F1 Rd 1 o 0 0 o 0 o 0` 0 1 1 0 0 o o 1 o 0 1 o 1 o 0 o 1 0 o o 1 1 1 o 0 0 1 1 o 1 o o 1 o o 1 0 0 o 1 0 1 E=cb,

General functions 1F1=0F1=T1F2.(F1+) +E.F2.F11 1F2=0F2 =T.1E.Rb1-E.(Rb+F2.F1)1 50 In the mechanization of the excess-2 correction illustrated in Figs. 3u, 3b, and 3c; the pairs of Equations 201, 202, 203, and 400 above are combined by introducing the variables S and as explained above. It will be noted that the changing functions are mechanized although, as has been explained, the general, setting and changing functions may be used interchangeably. The equations are left in a factored form so that Figs. 3a, 3b, and 3c illustrate a factored mechanization. The comblned adder-subtracter equations utilized in the mechanizations shown in Figs. 3a, 3b, and 3c then are:

E=Cb+Rb.F2.F1 ='C.(R b`+-'2+F1) (201) Rd=r.(.F1+E.F1) +T.F1 (202) 1F1=0F1={.T.1F2.(E+F1)+E.F2.F11+

s.r. 1112.(111 +E.F`2.F11 ).cp =T.1F2.F1.(s+E)+F2.F1.(E+)+ .(.F2+s.F21.cp (203) 1F2=0F2=T.{.1(1a5+111)+E.Rb1+

s. 119.1515. (Rb-1112.1El 1).@

The manner in which the circuits shown in Figs. 3a, 3b, and 3c are mechanized according to Equations 201, 75

202, 203, and .400 should be apparent from the examples already given, and therefore will not be discussed in detail.

As has been explained, an extra Hip-Hop is required for the excess-3 correction, and thus, in Table VII below, it will be noted that three flip-flop signals F1, F2, and F3, produced by corresponding Hip-Hops F1, F2, and F3, are utilized to designate corresponding colums` For simplicity, only setting functions are shown although it should be understood that the other types of functions shown above may be utilized as well. It is not necessary to consider the subtraction correction since, for the excess-3 code, it is simpler to form the 10s complement of negative numbers and then add. It will be noted that the signals E and 'are equal to Cb and C-i, respectively. Thus, an extra level is not required in generating the control functions since Cb` and CF are substituted directly into the equations.

TABLE VII Sum E E Cb Rb F3 F2 F1 C F3 F2 F1 Rd 1 O 0 U 1 1 0 0 0 0 1 1 1 0 0 0 1 1 1 0 0 l 0 0 1 0 0 1 0 0 0 0 0 1 0 1 1 0 0 1 0 0 1 0 0 1 1 O 1 0 0 1 0 1 0 0 0 1 l 1 1 0 l) 1 0 1 1 0 1 0 0 0 1 0 0 1 1 0 0 0 1 0 0 1 1 U 0 1 1 0 1 0 1 0 1 0 1 U 0 1 1 1 0 0 1 0 1 1 1 0 0 l 1 1 l 0 1 1 0 0 0 1 1 0 0 O 0 1 0 0 1 1 0 1 1 0 O 0 1 1 0 1 0 0 0 1 1 0 0 1 0 1 0 1 0 1 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 0 1 0 0 1 0 1 l 1 0 1 1 0 1 0 1 l 1 0 0 0 0 1 1 0 1 1 0 1 1 0 0 1 0 1 1 0 1 1 1 1 1 0 1 0 0 1 1 1 0 0 0 l 1 0 1 1 0 1 1 l 0 0 1 1 1 1 0 0 E Cb, E Cb It is possible to further reduce the total number of levels required for any excess-N mechanization by substituting the functions for .E and into the corresponding Equations 201, 202, 203, and 400 and then expanding and simplifying. This is extremely simple for the subtraction equations since, in this case, Cb is substituted for E and l; for However, for the addition equations or the addition-subtraction equations, it is somewhat more difficult to manipulate the equations algebraically than it is to derive completely expanded functions directly from a truth table. In deriving a completely expanded function from the truth table, the E and columns are not considered and all functions are made dependent upon the remaining variables. As an example of a function wherein E and have been eliminated and the function has been expanded so that it necessitates only two levels, consider the function for electrical gating circuit 201 for the excess-0 code. This is:

(201) Rd=nbf1+T.Rb.F2.F1+.Cb.F1+ s.r.cb."`1+s.r..F1+T.F1

Each of the algebraic equations discussed above may be modified by adding functions which are equal to 0,

such as FRF-1, or functions which do not: exist in the code; by multiplying the equation or part thereof by functions equal to 1, such as Rb-I-;

cally described herein, but is generic to a class of ernbodiments defined by the functions given and their derivatives.

Having considered the algebraic functions which provide a general definition of embodiments of the present invention, let use now consider specific circuit elements suitable for use as plug-in units.

A tiip-liop which is suitable for use in embodiments of the present invention is shown in Fig. 4. The 1 and 0 input circuits of the flip-fiop are coupled, respectively, to the contro-l grid of a first electron discharge tube 407 and the control grid of a second electron discharge tube 408.

The l and input circuits of the ip-op include capacitors 401 and 402, load resistors 403 and 404, and diodes 405 and 406, respectively. Diodes 405 and 406 are coupled to the control grids of tubes 407 and 403, respectively, and are biased such that only negative signals may pass to the control grids. The complementary output signals of the Hip-flop, F and F, are derived, respectively, from rst and second resistor networks 409 and 410. The signal F is derived from point tlill in first resistor network 409, and signal F is derived from point 412 in second resistor network 410. The anodes of tubes i 407 and 408 are connected, respectively, to first and second resistor networks 409 and 410, and a B-lpotential is applied to the junction 414 connecting the networks.

When a negative signal is applied to the`l input circuit of the iip-liop, and tube 407 is conducting, a negative signal passes to the grid of tube 407 through diode 40S and tube 407 becomes nonconducting. Due to the well-known action of the cross coupling circuits of the Hip-flop, tube 408 then becomes conducting. As a result, the anode voltage of tube 407 rises toward B-lwhereas the anode voltage of tube 408 becomes more negative. Output signals F and F, then, are clamped, respectively, at l40 and 125 volts by diode clamping network 413. The voltages of 140 and 125 volts are assumed to represent the binary values of l and 0, respectively.

When a negative signal is applied to the 0 input circuit of the iiip-flop, and tube 408 is conducting, tube 408 becomes nonconducting and tube 407 becomes conducting. In this situation, the ouput signals are complemented with respect to the above values, signals F and F being clamped at 125 and 140 volts, respectively, by the diode clamping network 413.

When negative signals are applied simultaneously to both input circuits, the flip-flop changes from one stable state to another and the output signals are complemented.

Diode and and or circuits are illustrated in Figs. 5a and 5b, respectively. In the and circuit, a positive potential, such as 265 volts, is applied to the anodes of three diodes 516, 517, and 510 through a gate resistor 515. Input signals, having either one or two voltage levels representing binary l or 0, are -appliedto input terminals 519, 520, and S21 which are connected, respectively, to the cathodes of diodes 516, 517, and 518. It is assumed that 140 and 125 volts are utilized, respectively, to represent binary 1 and 0.

When the signals applied to all of the input terminals are at 140 volts or the 1 level, the `output signal of the and circuit is approximately 140 volts. Thus, the application vof a l representing signal level at each of the signal terminals produces a 1 output signal. However, if

any of the input signals is at the volt level representing 0, then the output signal of the and circuit falls to approximately 125 volts indicating that the and condition of the circuit is not satisfied.

In the or circuit of Fig. 5b, the cathode of each of diodes 523, 524, and 525 is coupled through a gate resistor 522 to ground. The input terminals 526, 527, and 528 of the or circuit are connected to diodes 523, 524, and 525, respectively. Assuming again that and 125 volts represent, respectively, l and 0, it will be noted that if 140 volts is applied to any of the input terminals of the or circuit, the output signal becomes 140 volts or l. Thus, the "or circuit produces an output l signal when a l signal is applied to any one of its input terminals.

If the and circuit shown in Fig. 5a is the final and circuit of a logical network and has its output terminal coupled to the input circuit ofl a flip-flop, then a clock pulse signal is applied to one of its input terminals, for example, input terminal 519. The clock pulse is assumed to be a negative-going signal which is initially at 140 volts and decreases to 125 volts. If the signal applied to input terminal 520 is 125 volts representing 0, then the application of a clock pulse lsignal to terminal 519 will have no effect since there will be no change in the level cf the output signal. However, if prior to the application of a clock pulse, the tinal and circuit signal level is 140 volts, then, when the clock pulse is applied, the'output signal level will change rapidly from 140 volts to 125 vo-lts and a negative signal will be applied to the flipiiop input circuit to which the output circuit of the final and circuit is connected.

When the final logical circuit is an or circuit, special circuitry must be provided in order to introduce the clock pulse. In this case, the final or circuit provides both and and or logic. If signals a and b are applied to two input terminals of the final or circuit and the clock pulse is applied to a third input terminal of the final or circuit, then the logic appears as cp.(a|b). Since this expression involves both and and or logic, it has been represented in Figs. 2a, 2b, and 2c as an and circuit having a clock pulse signal and signal (a-l-b) applied to separate input terminals, and an or circuit for producing signal (a-i-b) having signals a and b applied to separate input terminals.

In practical applications, it is possible to combine the and and or logic into one circuit. Where all of the input signals for the final or circuit are produced by lower level and circuits, the combined clock pulse and final or circuit is as shown in Fig. 5c. It will be noted that diodes S31 and 532 and gate resistor 529 in Fig. 5c are connected in the same manner as the or circuit of Fig. 5b. Diode 530, however, is reversed, and the negative-going clock pulse is applied to its cathode. The circuit shown in Fig. 5c produces a negative-going signal which is applied to the input terminal of a flip-flop when a 1 or a 140 volt signal is applied to one or more of the other input terminals.

It is apparent from the foregoing description that the present invention provides a serial arithmetic unit wherein the true binary result of an operation is corrected to produce the desired binary-coded decimal result without any additional delay; and that embodiments of the present invention need only a minimum of flip-Hops for storing the digits of the true binary result during correction, two being required for the excess-even codes and three for the excess-odd codes.

lt has been pointed out that the principles of the present invention are applicable to all excess-N codes although certain codes have features which are preferred.

While only two embodiments have been illustrated in detail, it has been established that for each embodiment shown, a great number of variations are possible. General changing, and setting functions may be used interchangeably, as desired., The functions may be mechanized in expanded pr various factored forms. New equations may be derived from those given by the addition of functions equal to 0, multiplication by functions equal to l, and by the substitution of equivalent functions which may be derived algebracially or from a truth table.

`Specific diode circuits have been shown for providing the logical and, on and clock pulse operations. lt should be understood, however, that these may be replaced by other logical circuits providing the same operation.

What is claimed as new is:

1. A computer element comprising an electrical arithmetic element for combining decimal coded binary signals represented in a predetermined code to produce electrical signals representative of the true binary result of an arithmetic operation thereon, a shifting register connected to said arithmetic element to receive and store said true binary signals, said register including a plurality of bistable elements having at least two input and two output leads and a corresponding plurality of logical gating circuits individual to each of said input and output leads logically arranged in accordance with said predetermined code for directing the path of said truc binary signals through said shifting register in response to advancing signals, a logical control circuit connected in circuit relationship with said arithmetic element and said shifting register to receive said true binary signals from said element and the output signals representative of the storage condition of said bistable elements to provide an output signal in response to the logical combination of said electrical signals, the output signal from said control circuit being delivered to each of said gating elements, means for generating a correction sensing signal during predetermined time intervals, circuit means for applying said correction sensing signal in combination with the output signal of said control circuit to change the binary value of said true binary signals passing through each of said gating elements upon the occurrence of a logical correction condition in each of said elements, means for storing a carry signal produced by said arithmetic element or said correction signals, and means for advancing saidV electrical signals through said arithmetic element and said shifting register in a timed relationship whereby the binary coded electrical signals emerging from said register represent the correct decimal coded binary result of said first and second binary electrical signals.

2. In a serial arithmetic unit for performing an operation of addition or subtraction upon a pair of decimal numbers represented according to a predetermined binary code by producing a first signal series including first, second, third, and fourth binary electrical signals respectiveiy corresponding to the first, second, third, and fourth binary digits of the true binary result of addition or subtraction of a pair of decimal digits, one from each of said numbers, and then correcting said iirst signal series to produce a second signal series corresponding to the result of said operation represented according to said predetermined binary code, the combination comprising: shifting and correcting register means including first and second bistable devices, a first electrical gating circuit connected to said first bistable device and providing an output circuit for said register means, a second electrical gating circuit interconnecting said bistable devices, and a third electrical gating circuit connected to said first bistable device and providing an input circuit vfor said register means; and control means including yfirst means operable to actuate said electrical gating cir- .cuits to shift said first signal series through said register means until said second and third signals are simultaneously stored in said first and second bistable devices, respectively, second means operable at the completion of the operation of said first means to actuate said electrircal gating circuits to produce said second signal series and simultaneously shift said second signal series through 22 said register means, and means for applying each o f said signal series to said third electrical gating circuit and said control means in a predetermined time relationship.

3. The combination defined in claim 2 wherein said predetermined binary code is an excess-N code, where N is one of the integers 0 through 6; wherein the true binary sum produced during the operation of addition of a pair of decimal digits is corrected to a sum in said excess-N code by subtracting the binary equivalent of N when the sum is equal to or less than 9 and by adding the binary equivalent of (6-N) when the sum is greater than 9; and wherein the true binary difference produced in an operation of subtraction of a pair of decimal digits is corrected to said predetermined binary code by adding the binary equivalent of N if the difference is equal to or greater than 0 or by subtracting the binary equivalent of (6-N) if the difference is less than 0.

4. A serial arithmetic unit for performing operations of addition and subtraction in response to binary cornplementary operation sign signals S and S, respectively, upon binary coded decimal digits in the excess-0 code, said unit comprising: adder-subtracter means for producing complementary binary electrical signal series Rb, Rb corresponding to the true binary result of an operation upon said decimal digits, said adder-subtracter means including means for producing binary carry signals Cb and Cb; shifting and correcting register means responsive to signal series Rb for producing a signal series Rd corresponding to the result of said operation in said excess-0 code, said register means including first and second flipops producing complementary output signals F1, F1 and F2, F2, respectively, a first electrical gating circuit responsive to signals Fl and F1 for producing signal series Rd, a second electrical gating circuit responsive to signals F2, F2 for interconnecting said flip-flops, and a third electrical gating circuit connected to said first flip-flop and responsive to said signal series Rb, Rb for providing an input circuit for said register means; and control means responsive to said signals Rb, Rb; Cb, Cb; F1, F1; and F2, F2 for producing complementary control signals E. and E, said electrical gating circuits being responsive to said signals E and E to shift signal series Rb into said register means and for then producing signal series Rd and simultaneously shifting signal series Rd out of said register means.

5. A serial arithmetic unit for adding a pair of decimal digits each represented by a series of four binary digits in an excess-N code, where N is one of the integers 0 through 6, said unit comprising: an adder for producing complementary binary electrical signal series Rb and Rb corresponding to the true binary snm of said decimal digits and complementary binary electrical signal series Cb and Cb corresponding to the binary carry digits produced in adding associated pairs of binary digits respectively representing said decimal digits; register means including first and second hip-flops having input circuits 1F1, 0F1 and 1F2, 0122 and producing signals F1, F1 and F2, F2, respectively, a iirst electrical gating circuit responsive to signals Fl and F1 for producing signal series Rd corresponding to the sum of said digits in the excess-N code, a second electrical gating circuit responsive to signals F2 and F2 and coupled to input circuits 1F1 and 0F1, and a third electrical gating circuit connected to input circuits 1F?. and 0F2 and providing an input circuit for said register means; and control means for producing complementary control signals E and E to actuate said electrical gating circuits to shift said signal series Rb into said register means and to further actuate said electrical gating circuits to produce and shift said signal series Rd out of said register means; said complementary signals E and E having levels representing binary 1 and 0,' respectively, when the sum of said digits is greater than 9 and having levels representing binary and 1, respectively, when the sum of said decimaldigits is equal to or less than 9.

6. in a serial arithmetic unit for performing an operation of addition or subtraction upon numbers represented 'in a binary-coded decimal form, by producing a rst signal series including rst, second, third, and fourth signals corresponding to the first, second, third, and fourth binary digits, respectively, of the true binary result of said operation, and then correcting said first signal series to produce a second signal series corresponding to the result of said operation represented in said binary-coded decimal form: a shifting and correcting register including tirst and second bistable devices, a iirst electrical gating circuit connected to said iirst bistable device and providing an output circuit for said register, a secondelectrical gating circuit interconnecting said bistable devices, a third electrical gating circuit connected to said second bistable device and providing an input circuit for said register; means for applying a compiemen tary pair of control signals to said electrical gating circuits to actuate said gating circuits to shift said first signal series through said register until said second and third signals are simultaneously stored in said first and second bistable devices, respectively; and means for applying a control signal to said electrical gating circuits to actuate said electrical gating circuits to produce said second signal series and simultaneosuly to shift said second signal series through said register, and means for applying said iirst signal series to said third electrical gating circuit and to each of said latter mentioned means to produce said control signals.

7. In a serial arithmetic unit for performing an arithmetic operation upon decimal digits in an excess-N code by producing a first binary electrical signal series corresponding to the true binary result of said operation, and then correcting said lirst signal series to produce a second binary electrical signal series corresponding to the result of said operation in said excess-N code: a shifting and correcting register including first and second flip-Hops respectively producing rst and second binary signal pairs, a first electrical gating circuit responsive to said iirst signal pair for producing said second signal series, a second electrical gating circuit interconnecting said flip-hops, a third electrical gating circuit connected to said second flip-iiop and providing an input circuit for said register, and means for applying control signals to said electrical gating circuits for actuating said electrical gating circuits to shift in and correct said irst signal series to produce said second signal series, said latter mentioned means including means responsive to said rst signal series for generating said control signals.

8. A digital computer element comprising an electrical arithmetic element for combining first and second electrical signals representative of binary digits in a predetermined code to produce electrical signals representative of the true binary result of an arithmetic operation performed therein, a shifting register connected to said arithmetic element to receive and store said true binary signals, said register including at least a pair of bistable elements and a plurality of gating elements comprised of "and and or circuits, said and and or circuits being connected in circuit relationship with said bistable elements and said arithmetic element in accordance with said predetermined code for directing the path of said true binary signals into and out of said shifting register through said bistable elements, a radix correction control circuit connected in circuit relationship with said arithmetic element and said shifting register to receive said true binary signals from said element and the output signals from said bistable elements, said'control circuit comprising a plurality of and and or circuits arranged in accordance with said predetermined code to provide an output signal in response to said electrical signals received therein, means for connecting said output signal from said control circuit to each of said gating elements in accordance with said predetermined code, means for generating a correction sensing signal during predetermined binary time intervals, circuit means for applying said correction sensing signal in combination with the output signal of said correction control circuit to each of said gating elements to change the direction of travel of said true binary signals through same upon the ocn currence of a logical correction condition in each of said and and or circuits, means for storing a carry signal produced by said arithmetic element and said correction signals, and means for advancing said electrical signals including said carry signal through said arithmetic element and said shifting register in a timed relationship whereby the binary coded electrical signals emerging from said register represent the correct decimal coded binary arithmetic result of said iirst and second electrical signals.

References Cited in the file of this patent UNITED STATES PATENTS 2,538,615 Carbrey Ian. 16, 1951 2,570,716 Rochester Oct. 9, 1951 2,589,465 Weiner Mar. 18, 1952 2,656,106 Stabler Oct. 20, 1953 2,686,299 Eckert Aug. l0, 1954 2,703,202 Cartwright Mar. 1, 1955 2,715,678 Barney Aug. 16, 1955 2,719,228 Auerbach et al Sept. 27, 1955 2,723,080 Curtis Nov. 8, 1955 FOREIGN PATENTS 678,427 Great Britain Sept. 3, 1952 OTHER REFERENCES Booth: An Electronic Digital Computer, Electronic Engineering, December 1950; pages 492 to 498. 

